RAID

✒️ 2025-05-22 14:27 내용 수정


저장장치 여러 개를 묶어 고용량, 고성능인 저장 장치 한 개와 같은 효과를 얻기 위해 개발된 기법

레벨 최소 디스크 오류검출기능 고장 복구 기능 특징
RAID LINEAR 2개 X 2개 이상을 1개의 볼륨으로 사용, 순차적으로 데이터 저장
1개 디스크가 고장나면 묶여있던 볼륨 사용 불가
RAID 0 2개 X X 스트라이핑, 속도가 가장 빠르고 공간 효율성 좋음
데이터를 여러 조각(=디스크 수)으로 나눠 동시에 저장하기에 한 섹터에서 손상 발생 시 복구 불가
RAID 1 2개 X O(그대로 복사) 미러링, 한 디스크에 데이터를 작성하면 다른 디스크는 미러링으로 사용
속도 향상은 기대하기 어려우나, 물리적 오류 발생 시 해당 하드만 교체하는 것으로 문제 해결 가능
동일한 용량의 디스크가 2개 필요하므로 비싸고 공간 효율성 떨어짐
RAID 5 3개 O(배분됨) O 스트라이핑, RAID 1의 안정성 + RAID 0의 공간 효율성
Parity를 사용하여 데이터를 복구
총 용량 = (하드디스크 수 - 1)
RAID 6 4개 O RAID 5에서 Double Parity bit를 이용한 방식
각 디스크에 2개의 Parity 데이터 기록, 디스크가 2개까지 고장 나도 데이터 손실 X
총 용량 = (하드디스크 수 - 2)
RAID 10 4개 RAID 1로 2개씩 미러링, 이를 다시 RAID 0으로 스트라이핑
RAID 01보다 손상된 하드를 교체할 때 데이터 유지 및 교체 속도 측면에서 더 유리함
RAID 01 4개 RAID 0로 2개씩 스트라이핑, 이를 다시 RAID 1으로 미러링

RAID 설정

  1. 가상 머신에서 하드디스크 장착 (하드디스크 추가#1. 하드디스크 추가)
  2. 리눅스에서 추가된 하드디스크 개수 확인
  3. 파티션 생성 (하드디스크 추가#2. 파티션 생성): #fdisk
  4. 하드디스크의 디스크 타입# fdisk에서 Linux Raid으로 변경
    • # fdisk /dev/sdb1
    • t : 디스크 id 변환 : 83(Linux) -> fd(Linux RAID)
    • w : 저장하고 종료하기 꼭 잊지 말기
  5. mdadm을 이용한 RAID 생성
  6. 파일시스템 생성(포맷) (하드디스크 추가#3. 파일 시스템 생성하기) : `# mkfs.ext4
  7. 마운트 (하드디스크 추가#4. 마운트하여 사용하기) : # mkdir # mount
  8. 마운트 확인 : # df -h

RAID 0 만들기

  1. 하드디스크를 추가 하고 파티션 지정

    • 레이드의 하드디스크 타입 : fd
      RAID1 하드추가 및 파티션과 디스크타입지정.png
  2. RAID 0 만들기 # mdadm --create md장치명 --level=레이드레벨 --raid-devices=하드디스크갯수 장치명1 장치명2

    • RAID 0이므로 --level=0
  3. RAID 0 확인 : # mdadm --detail md장치명
    RAID2 md생성.png

  4. RAID 0 파일시스템 생성 : # mkfs.ext4 md장치명
    RAID3 파일시스템 생성.png

  5. 마운트 포인트 생성 및 마운트 작업 : # mkdir 타겟디렉터리, # mount md장치명 타겟디렉터리
    RAID4 마운트.png

  6. RAID 0 해제할 경우 : # mdadm --stop md장치명

    • 명령어 입력 후 생성된 RAID 0 에서 하드를 여러 개 묶은 걸 다시 푼다.
    • 이 때 바로 다음 작업을 해버리면 하드 일부만 해제되고 나머진 해제가 안되는 현상이 생길 수 있으므로 시간 차를 두고 해제 및 확인을 해야 한다.
      RAID5 마운트해제 및 RAID 해제.png
  1. 일반 하드디스크로 초기화 : # fdisk 장치이름
    • 기존의 하드디스크가 고장난 것으로 가정 후 작업진행
    • 파티션 초기화 및 타입 재지정
    • 다시 RAID 0 를 만든다면 1번 과정으로 돌아가서 반복

RAID 1 만들기

  1. 고장 난 하드 지정 전 umount
  1. 고장 난 하드 지정 : # mdadm md장치명 -f 장치명

    • 고장 난 하드는 # mdadm --detail md장치명로 확인 시 faulty 표시로 뜨고, 이 상태로 뜬다.
    • 아래는 mount 되었던 하드의 파일 및 디렉터리 확인
  2. 고장 난 하드 제거 : # mdadm md장치명 -r 장치명
    RAID10 장애처리 후 상태 확인.png

  3. 새 하드디스크를 md에 추가 : # mdadm md장치명 -a 장치명

    • 새 장치가 기존 RAID 1에 있던 하드 디스크와 미러링된다.
      RAID11 새 하드디스크를 추가.png

RAID Linear 만들기


RAID 10 만들기

RAID 01 만들기


RAID 5 만들기

  1. 특징
  1. 제작

RAID 5 그림.png


RAID 6 만들기